package com.wuxinwudai.android.javaext;

/**
 * Tuple2<A,B> 类用于构建二元元组
 * @author 吾心无待 于 2016年03月12日
 */
public class Tuple2<A,B> {
    private final A a;
    private final B b;
    private Tuple2(A a, B b){
        this.a = a;
        this.b = b;
    }

    /**
     * 工厂方法创建 Tuple2 类的一个新实例
     * @param a 参数 a
     * @param b 参数 b
     * @param <A> 参数类型 A
     * @param <B> 参数类型 B
     * @return 返回 Tuple2 泛型类的新实例
     */
    public static <A,B> Tuple2 create(A a,B b){
        return new Tuple2(a,b);
    }

    /**
     * 获取 A 元素
     * @return 返回 A 元素
     */
    public A getA() {
        return a;
    }

    /**
     * 获取 B 元素
     * @return 返回 B 元素
     */
    public B getB() {
        return b;
    }
}
